#ifndef PACKING_H
#define PACKING_H

#include "dilithium_impl.h"

/* 打包Function */
void polyz_pack(uint8_t *r, const Poly *a);
void polyz_unpack(Poly *r, const uint8_t *a);

void polyw1_pack(uint8_t *r, const Poly *a);

void polyvecl_pack_z(uint8_t *r, const PolyVecL *v);
void polyveck_pack_w1(uint8_t *r, const PolyVecK *v);

/* 挑战多项式 */
void poly_challenge(Poly *c, const uint8_t seed[32]);

#endif
